home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / v10n18.arc / LN1018.ARC / MYSHELL.2 < prev    next >
Text File  |  1991-10-30  |  1KB  |  37 lines

  1. REM MyShell2
  2.  
  3. Declare Sub MyShell Lib "kernel" \
  4.     (lpCmdStr$, nCmdShow As Integer) \
  5.     Alias "WinExec"
  6.  
  7. Function Extension$(fname$)
  8.     If Len(fname$) < 4 Then maxi = Len(fname$) Else maxi = 4
  9.     s$ = Right$(fname$, maxi)    ' extension has to be in last characters
  10.     If InStr(s$, "\") <> 0 Then  ' must be tiny directory name, not extension
  11.         Extension$ = ""
  12.     Else
  13.         n = InStr(s$, ".")
  14.         If n = 0 Then Extension$ = "" Else \
  15.             Extension$ = Right$(fname$, maxi - n)
  16.     End If
  17. End Function
  18.  
  19. Sub Launch(cmd$)
  20.     If InStr(cmd$, " ") Then   ' if space in cmd$, then
  21.         MyShell cmd$, 1        ' must have program name already
  22.     Else
  23.         ext$ = Extension$(cmd$)
  24.         prog$ = GetProfileString$("extensions", ext$) ' program.exe ^.xxx
  25.         If prog$ = "" Then
  26.             MyShell cmd$, 1 ' nothing in [extensions]: assume program name
  27.         Else
  28.             prog$ = Left$(prog$, InStr(prog$, " "))   ' throw away ^.xxx
  29.             MyShell prog$ + " " + cmd$, 1
  30.         End If
  31.     End If
  32. End Sub
  33.  
  34. Sub MAIN
  35.     Launch "foo.bmp"    ' or any filename .EXT
  36. End Sub
  37.